home *** CD-ROM | disk | FTP | other *** search
- Path: abcfd20.larc.nasa.gov!amiga-request
- From: amiga-request@abcfd20.larc.nasa.gov (Amiga Sources/Binaries Moderator)
- Subject: v90i242: ListPlot - 2d plotting program, Part01/03
- Reply-To: Anthony M. Richardson <amr@dukee.egr.duke.edu>
- Newsgroups: comp.sources.amiga
- Message-ID: <comp.sources.amiga:v90i242@abcfd20.larc.nasa.gov>
- Date: 23 Aug 90 01:03:24 GMT
- Approved: tadguy@uunet.UU.NET (Tad Guy)
- X-Mail-Submissions-To: amiga@uunet.uu.net
- X-Post-Discussions-To: comp.sys.amiga
-
- Submitted-by: Anthony M. Richardson <amr@dukee.egr.duke.edu>
- Posting-number: Volume 90, Issue 242
- Archive-name: applications/listplot/part01
-
- [ the manual page was uuencoded for posting ...tad ]
-
- ListPlot is a 2D plotting program built around the PLPLOT plotting library.
- Although working directly with the PLPLOT library routines is more
- flexible, ListPlot is quite powerful.
-
- #!/bin/sh
- # This is a shell archive. Remove anything before this line, then unpack
- # it by saving it into a file and typing "sh file". To overwrite existing
- # files, type "sh file -c". You can also feed this as standard input via
- # unshar, or by typing "sh <file", e.g.. If this archive is complete, you
- # will see the following message at the end:
- # "End of archive 1 (of 3)."
- # Contents: Csrc Csrc/datatypes.h Csrc/input.c Make Makefile README
- # docs docs/ListPlot.1 examples examples/README examples/lineinput
- # examples/lineplot examples/loginput examples/logplot
- # examples/polarinput examples/polarplot plstnd.fnt.uu
- # Wrapped by tadguy@abcfd20 on Wed Aug 22 21:03:20 1990
- PATH=/bin:/usr/bin:/usr/ucb ; export PATH
- if test ! -d 'Csrc' ; then
- echo shar: Creating directory \"'Csrc'\"
- mkdir 'Csrc'
- fi
- if test -f 'Csrc/datatypes.h' -a "${1}" != "-c" ; then
- echo shar: Will not clobber existing file \"'Csrc/datatypes.h'\"
- else
- echo shar: Extracting \"'Csrc/datatypes.h'\" \(3681 characters\)
- sed "s/^X//" >'Csrc/datatypes.h' <<'END_OF_FILE'
- X/*
- X * datatypes.h
- X */
- X
- Xtypedef char generic;
- Xtypedef int bool;
- X#define FALSE (bool)0
- X#define TRUE (!FALSE)
- Xtypedef float FLOAT;
- X
- X#if defined(ibmRT)
- X# define MAX_FLOAT 1.701e38
- X#endif
- X#if defined(vax) || defined(vax3200) || defined(dgmv)
- X# define MAX_FLOAT 1.701e38
- X#endif
- X
- Xstruct list_atom {
- X generic *la_p;
- X struct list_atom *la_next;
- X};
- Xtypedef struct list_atom LATOM;
- Xtypedef struct list {
- X int list_n;
- X LATOM *list_head;
- X LATOM *list_tail;
- X } LIST;
- X
- Xtypedef enum data_type {
- X integer,
- X dbl,
- X flt,
- X byte,
- X string,
- X interval,
- X boolean,
- X set,
- X rect
- X } DATATYPE;
- X#define isInteger(V) (V.val_type == integer? TRUE : FALSE)
- X#define isDbl(V) (V.val_type == dbl? TRUE : FALSE)
- X#define isFlt(V) (V.val_type == flt? TRUE : FALSE)
- X#define isByte(V) (V.val_type == byte? TRUE : FALSE)
- X#define isString(V) (V.val_type == string? TRUE : FALSE)
- X#define isInterval(V) (V.val_type == interval? TRUE : FALSE)
- X#define isBoolean(V) (V.val_type == boolean? TRUE : FALSE)
- X#define isSet(V) (V.val_type == set? TRUE : FALSE)
- X#define isRect(V) (V.val_type == rect? TRUE : FALSE)
- X
- X#define VtoInteger(V) (V).val_u.udt_int
- X#define VtoDbl(V) (V).val_u.udt_dbl
- X#define VtoFlt(V) (V).val_u.udt_flt
- X#define VtoByte(V) (V).val_u.udt_byte
- X#define VtoString(V) (V).val_u.udt_string
- X#define VtoInterval(V) (V).val_u.udt_interval
- X#define VtoBoolean(V) (V).val_u.udt_bool
- X#define VtoSet(V) (V).val_u.udt_set
- X#define VtoRect(V) (V).val_u.udt_rect
- X
- X
- X
- Xtypedef struct interval {
- X double int_lo, int_hi;
- X } INTERVAL;
- X
- Xtypedef LIST SET;
- X
- Xtypedef struct rect {
- X FLOAT r_diag[4]; /* xmin,ymin, xmax,ymax */
- X } RECT;
- X#define XMin r_diag[0]
- X#define YMin r_diag[1]
- X#define XMax r_diag[2]
- X#define YMax r_diag[3]
- X
- Xtypedef union data_types {
- X char udt_byte;
- X int udt_int;
- X bool udt_bool;
- X double udt_dbl;
- X float udt_flt;
- X char *udt_string;
- X INTERVAL udt_interval;
- X SET udt_set; /* {a,b,c,...} */
- X RECT udt_rect;
- X } UTYPE;
- X
- Xtypedef struct value {
- X DATATYPE val_type;
- X UTYPE val_u;
- X } VALUE;
- X
- X#define Vstrcmp(V, S) (V.val_type==string? strcmp(V.val_u.udt_string,S)==0? TRUE : FALSE : FALSE)
- X#define Vstrchr(V, C) (V.val_type==string? strchr(V.val_u.udt_string,C)==(char *)NULL? FALSE : TRUE : FALSE)
- X
- Xtypedef struct arg_def {
- X VALUE *ad_value;
- X char *ad_id;
- X char *ad_options;
- X char *ad_opttype;
- X char *ad_default;
- X char *ad_defaultType;
- X char **ad_helptext;
- X} ARGDEF;
- X
- X
- X#ifdef ANSI_C
- Xvoid ErrorExit();
- Xbool Append(LIST *L, generic *Ptr);
- Xchar *malloc(unsigned int);
- Xchar *calloc(unsigned int, unsigned int);
- Xchar *StrDup(char *Str);
- Xvoid get_args(
- X int argc,
- X char **argv,
- X ARGDEF *Symbols[],
- X char *Usage[],
- X char *Function[]
- X );
- Xvoid PrintArgDef(FILE *Fp, ARGDEF *D);
- Xvoid PrintArg(FILE *Fp, ARGDEF *D);
- Xbool ParseArg(ARGDEF *Symbols[], char *arg);
- Xbool ParseEntry(ARGDEF *Entry, char *arg);
- Xbool ParseString(ARGDEF *Entry, char *Option, int n, char *arg);
- Xbool ParseDbl(ARGDEF *Entry, char *arg);
- Xbool ParseFloat(ARGDEF *Entry, char *arg);
- Xbool ParseInt(ARGDEF *Entry, char *arg);
- Xbool ParseBool(ARGDEF *Entry, char *arg);
- Xbool ParseByte(ARGDEF *Entry, char *arg);
- Xbool ParseInterval(ARGDEF *Entry, char *arg);
- Xbool ParseSet(ARGDEF *Entry, char *arg, char *Type, int TypeWidth);
- Xbool ParseRect(ARGDEF *Entry, char *arg);
- X
- Xvoid PrintUsage(
- X FILE *Fp,
- X char *Usage[],
- X char *Function[],
- X ARGDEF *Symbols[]
- X );
- Xvoid SetDefaults(ARGDEF *Symbols[]);
- Xbool SetValue(VALUE *, char *Value, char *Type);
- Xbool SetString(VALUE *, char *);
- Xbool SetDbl(VALUE *, char *);
- Xbool SetFloat(VALUE *, char *);
- Xbool SetInt(VALUE *, char *);
- Xbool SetBool(VALUE *, char *);
- Xbool SetByte(VALUE *, char *);
- Xbool SetInterval(VALUE *, char *);
- Xbool SetSet(VALUE *, char *, char *, int);
- Xbool SetRect(VALUE *, char *);
- X
- X#else
- X#endif
- END_OF_FILE
- if test 3681 -ne `wc -c <'Csrc/datatypes.h'`; then
- echo shar: \"'Csrc/datatypes.h'\" unpacked with wrong size!
- fi
- chmod +x 'Csrc/datatypes.h'
- # end of 'Csrc/datatypes.h'
- fi
- if test -f 'Csrc/input.c' -a "${1}" != "-c" ; then
- echo shar: Will not clobber existing file \"'Csrc/input.c'\"
- else
- echo shar: Extracting \"'Csrc/input.c'\" \(4974 characters\)
- sed "s/^X//" >'Csrc/input.c' <<'END_OF_FILE'
- X/*
- X * input.c
- X *
- X * Gets data to be plotted
- X */
- X#include <stdio.h>
- X#include <errno.h>
- Xextern int errno;
- X#include <assert.h>
- X#include <ctype.h>
- X#include "datatypes.h"
- X
- X
- XFLOAT **
- XGetData(Fp, m, n)
- XFILE *Fp;
- Xint *m, *n;
- X{
- X#ifdef ANSI_C
- X FLOAT **GetDataMem(FILE *fp, int *M, int *N);
- X#else
- X FLOAT **GetDataMem();
- X#endif
- X
- X return(GetDataMem(Fp, m, n));
- X}
- X
- X
- Xbool
- XAppend(L, Ptr)
- Xregister LIST *L;
- Xgeneric *Ptr;
- X{
- X register LATOM *A;
- X
- X assert(L != (LIST *)NULL);
- X assert(L->list_n >= 0);
- X
- X if ((A = (LATOM *)calloc(1, sizeof(LATOM))) == (LATOM *)NULL) {
- X perror("(AppendDbl) ");
- X ErrorExit();
- X }
- X A->la_p = Ptr;
- X A->la_next = (LATOM *)NULL;
- X
- X if (L->list_n == 0) {
- X /* empty list */
- X assert(L->list_head == (LATOM *)NULL);
- X assert(L->list_tail == (LATOM *)NULL);
- X L->list_head = A;
- X L->list_tail = A;
- X L->list_n = 1;
- X } else {
- X assert(L->list_head != (LATOM *)NULL);
- X assert(L->list_tail != (LATOM *)NULL);
- X L->list_tail->la_next = A;
- X L->list_tail = A;
- X L->list_n++;
- X }
- X return(TRUE);
- X}
- X
- X
- XFLOAT **
- XGetDataMem(Fp, m, n)
- XFILE *Fp;
- Xint *m, *n;
- X{
- X int i;
- X int C;
- X int NTuples, TupleSize;
- X double D;
- X FLOAT *F;
- X FLOAT *Tuple;
- X FLOAT **Data;
- X LIST TupleL1;
- X LIST TupleList;
- X LATOM *A;
- X#ifdef ANSI_C
- X bool GetNextDbl(FILE *, double *, int *);
- X#else
- X bool GetNextDbl();
- X#endif
- X
- X TupleL1.list_n = 0;
- X TupleL1.list_head = (LATOM *)NULL;
- X TupleL1.list_tail = (LATOM *)NULL;
- X
- X /* read first line to determine tuple size */
- X NTuples = 0;
- X i = 0;
- X do {
- X if (GetNextDbl(Fp, &D, &C) == TRUE) {
- X if ((F = (FLOAT *)calloc(1, sizeof(FLOAT))) == (FLOAT *)NULL) {
- X perror("(GetDataMem) ");
- X ErrorExit();
- X }
- X *F = D;
- X Append(&TupleL1, (generic *)F);
- X ++i;
- X } else {
- X break;
- X }
- X } while(C != '\n' && C != EOF);
- X
- X TupleSize = i;
- X if ((Tuple=(FLOAT *)calloc(TupleSize, sizeof(FLOAT))) == (FLOAT *)NULL) {
- X perror("(GetDataMem) ");
- X ErrorExit();
- X }
- X for (A=TupleL1.list_head,i=0; i<TupleSize; i++,A=A->la_next) {
- X Tuple[i] = *((FLOAT *)(A->la_p));
- X }
- X
- X /* initialize list of tuples */
- X TupleList.list_n = 0;
- X TupleList.list_head = (LATOM *)NULL;
- X TupleList.list_tail = (LATOM *)NULL;
- X Append(&TupleList, (generic *)Tuple);
- X
- X /* get remaining tuples */
- X i = 1;
- X do {
- X if ((Tuple=(FLOAT *)calloc(TupleSize, sizeof(FLOAT))) == (FLOAT *)NULL) {
- X perror("(GetDataMem) ");
- X ErrorExit();
- X }
- X if (GetNextTuple(Fp, Tuple, TupleSize, &C) == TRUE) {
- X Append(&TupleList, (generic *)Tuple);
- X ++i;
- X }
- X } while(!feof(Fp));
- X
- X if ( C != EOF ) {
- X fprintf(stderr,"Error encountered while trying to read data stream...\n");
- X ErrorExit();
- X } else {
- X NTuples = i;
- X }
- X
- X
- X /* convert to list of tuples to vectorized array */
- X if ((Data = (FLOAT **)calloc(NTuples, sizeof(FLOAT *))) == (FLOAT **)NULL) {
- X perror("(GetDataMem) ");
- X ErrorExit();
- X }
- X
- X for (A=TupleList.list_head,i=0; i<NTuples; i++,A=A->la_next) {
- X Data[i] = (FLOAT *)A->la_p;
- X }
- X
- X *m = NTuples;
- X *n = TupleSize;
- X return(Data);
- X}
- X
- X
- Xbool
- XGetNextTuple(Fp, Tuple, n, C)
- XFILE *Fp;
- XFLOAT *Tuple;
- Xint n;
- Xregister int *C;
- X{
- X register int j;
- X double D;
- X#ifdef ANSI_C
- X bool GetNextDbl(FILE *, double *, int *);
- X#else
- X bool GetNextDbl();
- X#endif
- X
- X for (*C=' ',j=0; j<n && isspace((char)(*C)) && *C != EOF && *C != '\n'; ) {
- X if (GetNextDbl(Fp, &D, C) == TRUE) {
- X Tuple[j++] = D;
- X }
- X }
- X /* strip trailing any trailing characters */
- X for (; *C != '\n' && *C != EOF; )
- X *C = fgetc(Fp);
- X
- X if ( j>0 && j<(n-1) ) {
- X /* error */
- X if (*C == EOF) {
- X fprintf(stderr,"Unexpected EOF while reading data!\n");
- X } else if (*C == '\n') {
- X fprintf(stderr, "Unexpected EOL while reading tuple...\n");
- X } else {
- X fprintf(stderr, "Unable to interpret data stream...\n");
- X }
- X ErrorExit();
- X }
- X return(j==n? TRUE : FALSE);
- X}
- X
- Xbool
- XGetNextDbl(Fp, D, C)
- XFILE *Fp;
- Xdouble *D;
- Xregister int *C;
- X/* returns next uninterpreted character in C and
- X * TRUE if found double else FALSE.
- X */
- X{
- X register int i;
- X register char *cp;
- X char s[64];
- X int flag;
- X
- X for (flag=0,i=0,cp=s; i<sizeof(s)-1; ) {
- X if ((*C = fgetc(Fp)) == EOF) {
- X if (flag) {
- X *cp = (char)NULL;
- X if (sscanf(s, "%lf", D) == 1) {
- X return(TRUE);
- X } else {
- X /* error */
- X fprintf(stderr,"Encountered nonnumeric item in data stream...\n");
- X ErrorExit();
- X }
- X } else {
- X return(FALSE);
- X }
- X } else if (*C == '\n') {
- X if (flag) {
- X *cp = (char)NULL;
- X if (sscanf(s, "%lf", D) == 1) {
- X return(TRUE);
- X } else {
- X /* error */
- X fprintf(stderr,"Encountered nonnumeric item in data stream...\n");
- X ErrorExit();
- X }
- X } else {
- X return(FALSE);
- X }
- X } else if (isspace(*C)) {
- X if (flag) {
- X *cp = (char)NULL;
- X if (sscanf(s, "%lf", D) == 1) {
- X return(TRUE);
- X } else {
- X /* error */
- X fprintf(stderr,"Encountered nonnumeric item in data stream...\n");
- X ErrorExit();
- X }
- X } else {
- X continue;
- X }
- X } else {
- X flag = 1;
- X *cp++ = (char)(*C);
- X ++i;
- X }
- X }
- X fprintf(stderr,"Possible internal error...\nEncountered data item greater than %d characters!\n", sizeof(s)-1);
- X
- X ErrorExit();
- X}
- END_OF_FILE
- if test 4974 -ne `wc -c <'Csrc/input.c'`; then
- echo shar: \"'Csrc/input.c'\" unpacked with wrong size!
- fi
- # end of 'Csrc/input.c'
- fi
- if test -f 'Make' -a "${1}" != "-c" ; then
- echo shar: Will not clobber existing file \"'Make'\"
- else
- echo shar: Extracting \"'Make'\" \(45 characters\)
- sed "s/^X//" >'Make' <<'END_OF_FILE'
- Xlmk -f Makefile CC=lc OTHERDEFS=-DANSI_C all
- END_OF_FILE
- if test 45 -ne `wc -c <'Make'`; then
- echo shar: \"'Make'\" unpacked with wrong size!
- fi
- chmod +x 'Make'
- # end of 'Make'
- fi
- if test -f 'Makefile' -a "${1}" != "-c" ; then
- echo shar: Will not clobber existing file \"'Makefile'\"
- else
- echo shar: Extracting \"'Makefile'\" \(744 characters\)
- sed "s/^X//" >'Makefile' <<'END_OF_FILE'
- X
- XH=/Csrc
- XCFLAGS=-ff -i$(H) $(OTHERDEFS)
- XCSRC=Csrc
- XPLPLOT=lib:plpffp.lib
- X
- XTARGET= ListPlot
- X
- XOBJECTS= \
- X $(CSRC)/get_args.o\
- X $(CSRC)/input.o\
- X $(CSRC)/plotting.o
- X
- X
- Xall: $(OBJECTS) $(TARGET)
- X
- Xclean:
- X delete #?.o
- X
- X$(CSRC)/get_args.o: $(CSRC)/get_args.c $(CSRC)/datatypes.h
- X $(CC) $(CFLAGS) $(CSRC)/get_args.c
- X
- X$(CSRC)/input.o: $(CSRC)/input.c $(CSRC)/datatypes.h
- X $(CC) $(CFLAGS) $(CSRC)/input.c
- X
- X$(CSRC)/ListPlot.o: $(CSRC)/ListPlot.c $(CSRC)/datatypes.h
- X $(CC) $(CFLAGS) $(CSRC)/ListPlot.c
- X
- X$(CSRC)/plotting.o: $(CSRC)/plotting.c $(CSRC)/datatypes.h
- X $(CC) $(CFLAGS) -dMAX_FLOAT=9.e18 $(CSRC)/plotting.c
- X
- XListPlot: $(CSRC)/ListPlot.o $(OBJECTS)
- X blink lib:c.o $(CSRC)/ListPlot.o $(OBJECTS) to ListPlot lib lib:lcmffp.lib lib:lc.lib $(PLPLOT)
- END_OF_FILE
- if test 744 -ne `wc -c <'Makefile'`; then
- echo shar: \"'Makefile'\" unpacked with wrong size!
- fi
- chmod +x 'Makefile'
- # end of 'Makefile'
- fi
- if test -f 'README' -a "${1}" != "-c" ; then
- echo shar: Will not clobber existing file \"'README'\"
- else
- echo shar: Extracting \"'README'\" \(7752 characters\)
- sed "s/^X//" >'README' <<'END_OF_FILE'
- XABOUT LISTPLOT
- X
- XListPlot is a 2D plotting program built around the PLPLOT plotting library.
- XAlthough working directly with the PLPLOT library routines is more
- Xflexible, ListPlot is quite powerful.
- X
- XListPlot was ported from a UNIX program written by myself and (mainly)
- XRick Bartram. It reads from stdin and writes to stdout unless input
- Xand/or output files are specified on the command line. (Reading from
- Xstdin is of dubious value on the Amiga, since the standard shell does
- Xnot support pipes.) The program accepts a file of n-tuples. Each tuple
- Xconsists of space-separated numbers terminated with a newline. The
- Xfirst element of each tuple is the independent variable. Each remaining
- Xvariable is plotted against the first to produce n-1 curves.
- X
- XLinear-linear, linear-log, log-linear, log-log, and polar graphs are
- Xsupported.
- X
- XListPlot supports several output devices. By default the graph is drawn
- Xin a window on the Amiga's screen. With command line options the graph
- Xcan be
- X 1) sent to any preferences printer with graphics capability
- X 2) stored as an IFF file
- X 3) stored in HPGL format
- X 4) stored in Aegis Draw format
- X 5) stored as an Encapsulated Postscript File.
- X
- XA variety of line styles and colors are available.
- X
- XOverlining, underlining, subscripting, superscripting, and greek
- Xcharacters can be used within labels.
- X
- X
- XINSTALLATION
- X
- XCopy ListPlot to a directory in your path. The file plstnd.fnt
- Xcontains the fonts that ListPlot uses. It looks for this file in
- Xplfonts:plstnd.fnt. So you need to store this file in a convenient
- Xdirectory and make the appropriate assign.
- X
- X Example:
- X makedir sys:plfonts
- X copy plstnd.fnt sys:plfonts
- X assign plfonts: sys:plfonts
- X
- XYou'll probably want to add the "assign" command to your startup sequence.
- X(plstnd.fnt is the same as that used in the most recent versions
- X(3.0 or higher) of PLPLOT)
- X
- XListPlot uses the FFP math libraries supplied by Commodore, so make
- Xsure the mathtrans.library file is in your libs: directory.
- X
- XThe PLPLOT library uses the palette program that comes with the
- XWorkBench 1.3 enhancer package as a color requester. PLPLOT looks for
- Xthis program in tools: and, if it's not there, it looks in sys:tools.
- XYou'll probably want to assign" tools: to the directory in which the
- Xpalette program resides. (At least until you get the colors set the
- Xway you want them.)
- X
- X
- X
- XTRYING OUT LISTPLOT
- X
- XBecause of the large number of command line options, it usually easiest
- Xto create simple shell scripts to call ListPlot. Some example
- Xscripts are provided in the examples directory. (These are standard
- XAmiga shell scripts). To test out ListPlot, try one or all of the
- Xfollowing
- X
- X execute lineplot lineinput
- X execute logplot loginput
- X execute polarplot polarinput
- X
- X
- X
- XTHE DEVICE DRIVERS
- X
- XThe device drivers are those provided by PLPLOT. I've excerpted the
- Xfollowing descriptions from the PLPLOT distribution.
- X
- X Amiga window
- X
- X You can resize the window while the program is plotting in the
- X window (see the "Redraw Enabled" section below).
- X Use the close gadget to close the window and exit ListPlot.
- X
- X "Plplot" menu selections:
- X
- X "Save Configuration"
- X - Saves current window configuration (window size, screen type,
- X screen depth, colors, resolution, etc.). The configuration
- X is saved in s:Plplot.def (only 54 bytes).
- X
- X "Reset"
- X - Resets the window to the configuration in s:Plplot.def
- X (or to a default config if this file doesn't exist).
- X
- X "Maintain Plot Aspect"
- X - If this is checked the plot aspect ratio is maintained as the
- X window is resized (handy for polar plots, etc.). Default
- X is unchecked in which case x and y are stretched
- X independently to fit in the window.
- X
- X "Redraw Enabled"
- X - If this is checked, then the graphics commands are buffered
- X in t:plplot.dat. This file is used to redraw the plot when
- X required. It's status is checked only when a new graph is
- X started. The buffer is also used to create the "Full Page"
- X prints under the "Print" selection.
- X
- X "Select Screen Type"
- X - A submenu allows the user to select either "Workbench" or
- X "Custom".
- X
- X "Print"
- X - There are three submenu options here. The "Bitmap Dump"
- X does just that (with full preferences support). The
- X output is pretty jagged, but you can play around with
- X the preferences stuff (scaling, smoothing, etc.) to
- X improve things. The other two submenus are
- X "Full Page (Landscape)" and "Full Page (Portrait)". This
- X uses the graphics buffer file (see "Redraw Enabled" above)
- X to create graphics output similar to the preferences
- X driver. However the aspect ratio can not be maintained.
- X Same preferences options are used as in preferences driver.
- X
- X "Save Bitmap as IFF File"
- X - Self explanatory. You can use this to save your images and
- X then touch them up (do area fills, etc.) with your favorite
- X paint program.
- X
- X "Screen Format" selections: (This menu only appears on the custom screen)
- X "Interlaced"
- X "High Resolution"
- X "Number of Colors"
- X "Set Color Palette"
- X - I think these are all self-explanatory. You can select either
- X 2, 4, 8, or 16 colors.
- X
- X
- X
- X Preferences
- X
- X The preferences driver creates a black and white graph on your
- X preferences supported printer. It uses the preferences selected
- X density and page size limits and ignores most of the other stuff.
- X If you have selected "ignore" in the page size limit options
- X (see the 1.3 Enhancer manual) then a full page graph is produced.
- X The other options operate as described in the Enhancer manual.
- X Only "ignore" and "bounded" produce aspect ratio correct plots
- X (usually unimportant unless x and y must have the same scaling
- X like for pie charts or polar plots). You can get very high quality
- X plots with this driver. A full page, high resolution plot
- X requires a lot of memory though (An 8"x10" 300 dpi plot requires
- X (8*300)*(10*300)/8 = 900000 bytes). You can use the page limits
- X to reduce the memory requirements and still get high quality
- X output.
- X
- X
- X iff
- X
- X The IFF driver will prompt for resolution and page size.
- X
- X
- X hp
- X
- X The plt: device is an HP plotter compatible device handler written by
- X Jim Miller and Rich Champeaux. It is freely redistributable, but
- X it is not included with this package (it's big enough already!).
- X It gives high quality output like the preferences driver but with
- X full preferences support. Usually requires less memory (for full
- X page plots) than the preferences driver, but is slower. Highly
- X recommended if you have a color printer or are memory strapped.
- X I don't know exactly which model HP plotter this is compatible
- X with (the HP7470 I think).
- X
- X
- X aegis
- X
- X I created this one because I have Draw2000 and it was easy to do.
- X This provides a very convenient method for touching up simple
- X graphs with paint-like tools.
- X
- X
- X postscript
- X
- X Encapsulated PostScript File.
- X
- X
- X
- X
- XTHINGS YET TO BE DONE
- X
- XThere may be a 3D/contour version of ListPlot if there is enough interest.
- X(PLPLOT does 3D and contour plotting and so the extension to ListPlot should
- Xbe fairly simple.)
- X
- X
- XREPORT BUGS TO
- X
- X Tony Richardson
- X
- X EMAIL amr@dukee.egr.duke.edu (Internet address)
- X
- X USMAIL Tony Richardson Tony Richardson
- X Dept of Elect Eng 311 S. LaSalle St. #41B
- X Duke University Durham, NC 27705
- X Durham, NC 27706
- X
- X ph 919-660-5262 ph 919-286-7101
- X
- END_OF_FILE
- if test 7752 -ne `wc -c <'README'`; then
- echo shar: \"'README'\" unpacked with wrong size!
- fi
- chmod +x 'README'
- # end of 'README'
- fi
- if test ! -d 'docs' ; then
- echo shar: Creating directory \"'docs'\"
- mkdir 'docs'
- fi
- if test -f 'docs/ListPlot.1' -a "${1}" != "-c" ; then
- echo shar: Will not clobber existing file \"'docs/ListPlot.1'\"
- else
- echo shar: Extracting \"'docs/ListPlot.1'\" \(9286 characters\)
- sed "s/^X//" >'docs/ListPlot.1' <<'END_OF_FILE'
- X.de PP
- X.sp 1;.ne 2
- X.en
- X.TH ListPlot 1 "AMIGA Manual" 5/15/90 "Duke University"
- X.SH NAME
- XListPlot - a vanilla plotting filter
- X.SH SYNOPSIS
- X.B ListPlot
- X[ options ]
- X.SH DESCRIPTION
- X.I ListPlot
- Xa simple 2D plotting filter based on the
- X.I PLPLOT
- Xplotting library.
- X.PP
- XIts principle advantage is that it supports a variety of graphics
- Xdevices.
- X.PP
- X.IR ListPlot
- Xreads from stdin and writes to stdout unless input and/or
- Xoutput files are specified on the command line.
- XThe program accepts a file of n-tuples. Each tuple consists of
- Xa sequence of space-separated numbers terminated with a newline.
- XThe first element of each tuple is assumed to be the independent
- Xvariable. Each remaining element is plotted against the first to
- Xproduce n-1 curves.
- X.PP
- X.IR ListPlot
- Xtakes a number of command line arguments that may be
- Xused to control the appearance of the plots.
- XCommand line arguments are specified in the form
- X.ti +10
- X.IR variable=value
- X.PP
- XFor a list of the arguments enter:
- X.sp
- X.ti +10
- XListPlot Help=All.
- X.SH VARIABLES TYPES
- X.ta
- X.in 20
- X.ta 20
- X.ti -10
- X.B Boolean
- X@tvalues accept values such as
- X.B true, false, yes, no, on, off, 0,
- Xand
- X.B 1
- X(ex. PlotColor=yes).
- X.sp
- X.ti -10
- X.B String
- X@tvalues expect the strings to entered as
- Xindicated and is case sensitive (ex. Domain=All).
- X.sp
- X.ti -10
- X.B Dbl
- X@tvalues expect real numbers (ex. AspectRatio=1.0).
- X.sp
- X.ti -10
- X.B Interval
- X@tvalues expect a pair of comma separated reals
- X(ex. Range=-1.0,3.0).
- X.sp
- X.ti -10
- X.B Set
- X@tvalues expect a list of comma separated elements enclosed in
- Xcurly braces ({}). (ex. LineStyle={MS,MMS,MSmmS})
- X.sp
- X.ti -10
- X.B Rect
- X@tvalues expect a list of comma separated numbers representing
- Xa diagonal from the lower-left corner to the upper-right corner
- X(ex. ViewPort={0.1,0.3, 0.9,0.6}).
- X.in 10
- X
- X.PP
- XThe title and label variables accept strings that include
- Xthe following control sequences:
- X.sp
- X.in +10
- X.B #u:
- Xmove up to superscript (ended with
- X.B #d
- X)
- X.br
- X.B #d:
- Xmove down to subscript (ended with
- X.B #u
- X)
- X.br
- X.B #b:
- Xbackspace to allow overprinting
- X.br
- X.B ##:
- Xthe number symbol
- X.br
- X.B #+:
- Xtoggle overline mode
- X.br
- X.B #-:
- Xtoggle underline mode
- X.br
- X.B #gx:
- XGreek letter corresponding to Roman letter x
- X.br
- X.in -10
- X.SH OPTIONS
- XThe currently available arguments are indicated below.
- X.B Bold
- Xface arguments indicate that they should be entered
- Xexactly as shown.
- XAn '*' indicates that an arbitrary string may be given.
- XA string with embedded spaces must be quoted.
- X
- X.in +10
- X.ti -10
- X.B AngularUnit=[ degrees | radians ]
- X.br
- X.I AngularUnit
- Xspecifies the angular unit of measure
- Xused for polar plots. For angles in radians use
- X.B AngularUnit=radians.
- X.sp 1
- X.ti -10
- X.B AnnotationScale=[
- X.I dbl
- X.B ]
- X.br
- X.I AnnotationScale
- Xcontrols the size of the characters
- Xused to annotate the axes.
- X.sp 1
- X.ti -10
- X.B AspectRatio=[
- X.I dbl
- X.B | Automatic ]
- X.br
- X.I AspectRatio
- Xcontrols the relative lengths of the vertical to horizontal axes.
- XIf set this value overrides the value of
- X.I ViewPort.
- X.sp 1
- X.ti -10
- X.B Boxed=[
- X.I boolean
- X.B | * ]
- X.br
- X.I Boxed
- Xadds axes to the edges of the plot.
- XIf
- X.I Boxed
- Xis given a boolean value then axes are placed on
- Xall of the edges. If
- X.I Boxed
- Xis given a string consisting
- Xof one or more of
- X.I t, b, r, l
- Xthen axes are added to
- Xtop, bottom, right and left edges respectively.
- X.sp 1
- X.ti -10
- X.B Domain=[
- X.I interval
- X.B | All | Automatic ]
- X.br
- X.I Domain
- Xmay be used to specify the bounds on the X axis.
- XWhen set to
- X.B All,
- Xall points are plotted. When set to
- X.B Automatic,
- Xoutlying points may not be plotted.
- X.sp 1
- X.ti -10
- X.B Gridding=[
- X.I boolean
- X.B ]
- X.br
- X.I Gridding
- Xputs a grid on the plot.
- X.sp 1
- X.ti -10
- X.B Help=[ All | all | * ]
- X.br
- X.I Help
- Xprovides some descriptive text for the user-settable
- Xplotting variables. If the variable
- X.I Verbose
- Xis set then an extended description is provided. To set verbose enter
- X.br
- X.sp
- XListPlot Verbose=yes Help=[
- X.I variable
- X|
- X.B All
- X].
- X.sp 1
- X.ti -10
- X.B LabelScale=[
- X.I dbl
- X.B ]
- X.br
- X.I LabelScale
- Xspecifies the relative size of the vertical and
- Xhorizontal axis labels. The typical range is [0.5 - 2.0].
- X.sp 1
- X.ti -10
- X.B LineColor=[
- X.I set
- X.B ]
- X.br
- X.I LineColor
- Xmay be used to specify a list of line colors for
- Xplots with multiple curves if this feature is supported for
- Xa particular output device.
- X.sp 1
- X.ti -10
- X.B LineStyle=[
- X.I set
- X.B ]
- X.br
- X.I LineStyle
- Xmay be used to specify a list of line styles for
- Xplots with multiple curves. Each linestyle is specified as
- Xa sequence of pen down... pen up elements. The elements are encoded
- Xusing the following characters to indicate element lengths:
- X.in +10
- X.br
- X.B m:
- X250 micron mark
- X.br
- X.B M:
- X1mm mark
- X.B (mmmm)
- X.br
- X.B s:
- X250 micron space
- X.br
- X.B S:
- X1mm space
- X.B (ssss)
- X.br
- X.in -10
- XFor example, a set of line styles might be indicated
- X.ti +10
- XLineStyle={MS,MMSS,MMSmmS,mmS,mmSmmSMMS}
- X.sp 1
- X.ti -10
- X.B Orientation=[ portrait | landscape ]
- X.br
- X.I Orientation
- Xcontrols whether the plot is displayed in
- Xlandscape or portrait orientation.
- X.sp 1
- X.ti -10
- X.B Origin=[
- X.I interval
- X.B | Automatic | Median ]
- X.br
- X.I Origin
- Xallows the placement of a set of axes at an
- Xarbitrary point.
- XThe
- X.I Median
- Xvalue places the axes at the median
- X.I X
- Xand the median
- X.I Y
- Xof the data values.
- X.sp 1
- X.ti -10
- X.B PlotColor=[
- X.I boolean
- X.B ]
- X.br
- X.I PlotColor
- Xif
- X.B true
- Xcauses the plot to generated in color if this
- Xfeature is supported on a particular output device.
- X.sp 1
- X.ti -10
- X.B PlotJoined=[
- X.I boolean
- X.B ]
- X.br
- X.I PlotJoined,
- Xif set, connects each data point with a line in the
- Xcurrent line style.
- X.sp 1
- X.ti -10
- X.B PlotPoints=[
- X.I boolean
- X.B ]
- X.br
- X.I PlotPoints
- Xif
- X.B true
- Xcauses symbols to be plotted in the current
- Xsymbol style at each data point.
- X.sp 1
- X.ti -10
- X.B PointScale=[
- X.I dbl
- X.B ]
- X.br
- X.I PointScale
- Xcontrols the relative size of the data point symbols
- Xwhen data point symbols are being plotted.
- X.sp 1
- X.ti -10
- X.B PointSymbol=[ Automatic |
- X.I set
- X.B ]
- X.br
- X.I PointSymbol
- Xspecifies a list of symbols to be used when plotting
- Xdata points. The symbols types are encoded as integers.
- X(See the
- X.B PLPLOT
- Xlibrary documentation to find the symbols available.)
- X.sp 1
- X.ti -10
- X.B PlotTitle=[ * ]
- X.br
- X.I PlotTitle
- Xtakes the plot title as an argument.
- XText control sequences described above may be included.
- X.sp 1
- X.ti -10
- X.B PlotDevice=[amiga| printer | iff |
- X.B hp | aegis | postscript]
- X.br
- X.I PlotDevice
- Xspecifies output device type.
- X.sp 1
- X.ti -10
- X.B PlotType=[ linlin | loglin |
- X.B linlog | loglog | polar ]
- X.br
- X.I PlotType
- Xspecifies the
- X.I graph paper
- Xupon which the plot is drawn.
- XThe current implementation plots in
- X.in +10
- X.br
- Xlinear-linear,
- X.br
- Xlog-linear,
- X.br
- Xlinear-log,
- X.br
- Xlog-log, and
- X.br
- Xpolar
- X.br
- X.in -10
- X.sp
- Xformats.
- XFor the log type plots, the log of the data is computed.
- XFor polar plots, see also
- X.I AngularUnit
- Xand
- X.I PolarVariable.
- X.sp 1
- X.ti -10
- X.B PolarVariable=[ angle | radius ]
- X.br
- X.I PolarVariable
- Xfor polar plots is used to specify
- Xwhether the independent variable is angular or radial.
- X.sp 1
- X.ti -10
- X.B Range=[
- X.I interval
- X.B | All | Automatic ]
- X.br
- X.I Range
- Xspecifies the y axis bounds. (ex. Range=-1,1 )
- XWhen set to
- X.B All,
- Xall points are plotted. When set to
- X.B Automatic,
- Xoutlying points may not be plotted.
- X.sp 1
- X.ti -10
- X.B SubPages=[
- X.I interval
- X.B ]
- X.br
- X.I SubPages
- Xspecifies the number of plots on a pages.
- XThis is a vestige of PLPLOT and I am not sure this has any use
- Xwithin the context of
- X.I ListPlot.
- XIt might be useful for
- Xcontrolling the size of the plots but the
- X.I ViewPort
- Xmight be a more direct solution.
- X.sp 1
- X.ti -10
- X.B SupplyAbscissa=[
- X.I boolean
- X.B ]
- X.br
- X.I SupplyAbscissa
- Xif set causes
- X.I ListPlot
- Xto supply a value for the independent variable.
- X.sp 1
- X.ti -10
- X.B TitleScale=[
- X.I dbl
- X.B ]
- X.br
- X.I TitleScale
- Xcontrols the relative size of the title text.
- X.sp 1
- X.ti -10
- X.B UseInputFile=[ * ]
- X.br
- X.I UseInputFile
- Xpermits the specification of an input file if you would rather not use stdin.
- X.sp 1
- X.ti -10
- X.B UseOutputFile=[ * ]
- X.br
- X.I UseOutputFile
- Xpermits the specification of an output file if
- Xyou would rather not use stdout.
- X.sp 1
- X.ti -10
- X.B Verbose=[
- X.I boolean
- X.B ]
- X.br
- X.I Verbose
- Xif set causes extended messaging.
- X.sp 1
- X.ti -10
- X.B ViewPort=[
- X.I rect
- X.B ]
- X.br
- X.I ViewPort
- Xallows control over the size of a plot. Takes
- Xa viewing rectangle diagonal as an argument.
- X.ti +10
- Xex. ViewPort={0.1,0.3, 0.9,0.6}
- X.sp 1
- X.ti -10
- X.B XLabel=[ * ]
- X.br
- X.I XLabel
- Xspecifies X axis label. Text control sequences described
- Xabove may be included.
- X.sp 1
- X.ti -10
- X.B YLabel=[ * ]
- X.br
- X.I YLabel
- Xspecifies Y axis label. Text control sequences described
- Xabove may be included.
- X.sp 1
- X.ti -10
- X.B XTick=[ Automatic |
- X.I interval
- X.B ]
- X.br
- X.I XTick
- Xcontrols the spacing of major axis ticks and the number
- Xof minor subdivisions. (ex.
- X.I XTick=0.1,10
- Xindicates major ticks at units of 0.1 with 10 minor subdivisions.)
- X.sp 1
- X.ti -10
- X.B YTick=[ Automatic |
- X.I Interval
- X.B ]
- X.br
- X.I YTick
- Xcontrols the spacing of major axis ticks and the number
- Xof minor subdivisions.
- X.in -10
- X.SH FILES
- X.SH IDENTIFICATION
- XAuthors: Frederick R. Bartram and Anthony M. Richardson,
- XDept. of Electrical Engineering, Duke University, Durham, N.C. 27706.
- X.sp 0
- XInterNet: frb@@dukee.egr.duke.edu,amr@@dukee.egr.duke.edu
- X.sp 0
- XCopyright 1990 by Frederick R. Bartram and Anthony M. Richardson.
- X.sp 0
- XAmiga port by Anthony M. Richardson
- X.SH BUGS
- XPlease report any bugs or unusual
- X.I features
- Xto the authors.
- X
- END_OF_FILE
- if test 9286 -ne `wc -c <'docs/ListPlot.1'`; then
- echo shar: \"'docs/ListPlot.1'\" unpacked with wrong size!
- fi
- chmod +x 'docs/ListPlot.1'
- # end of 'docs/ListPlot.1'
- fi
- if test ! -d 'examples' ; then
- echo shar: Creating directory \"'examples'\"
- mkdir 'examples'
- fi
- if test -f 'examples/README' -a "${1}" != "-c" ; then
- echo shar: Will not clobber existing file \"'examples/README'\"
- else
- echo shar: Extracting \"'examples/README'\" \(595 characters\)
- sed "s/^X//" >'examples/README' <<'END_OF_FILE'
- XSome example shell scripts. To execute them, try one or all of the
- Xfollowing
- X
- X execute lineplot lineinput [ title [ xlabel [ ylabel [ device ] ] ] ]
- X execute polarplot polarinput [ device ]
- X execute logplot loginput [ title [ xlabel [ ylabel [ device ] ] ] ]
- X
- Xwhere the parameters in brackets are optional. (They must be given in order
- Xhowever, so to specify the device in lineplot you must also give the title,
- Xxlabel, and ylabel. They can be a null string, i.e. "".)
- X
- XFor example
- X
- X execute lineplot lineinput "lineplot title" x y
- X execute lineplot lineinput "" "" "" printer
- X
- Xwill work.
- END_OF_FILE
- if test 595 -ne `wc -c <'examples/README'`; then
- echo shar: \"'examples/README'\" unpacked with wrong size!
- fi
- chmod +x 'examples/README'
- # end of 'examples/README'
- fi
- if test -f 'examples/lineinput' -a "${1}" != "-c" ; then
- echo shar: Will not clobber existing file \"'examples/lineinput'\"
- else
- echo shar: Extracting \"'examples/lineinput'\" \(5577 characters\)
- sed "s/^X//" >'examples/lineinput' <<'END_OF_FILE'
- X0 1 0 0 0 0 0
- X0.0624142659996 0.975000602516165 0.0246867120350244 0.000325963707470416 2.83918799971519e-06 1.79095227746708e-08 0
- X0.133210252337 0.948902197912002 0.0497189913655889 0.001379511913532 2.59328535658923e-05 3.65593801692851e-07 0
- X0.172516521193 0.935347745422446 0.0624083012597769 0.00222225867601974 5.38637907472896e-05 9.8380765371158e-07 0
- X0.213794643999 0.921779199279238 0.0748849436231381 0.003275291410593 9.78595233132723e-05 2.210793482842e-06 0
- X0.256847725809 0.908310863809264 0.0870355427985956 0.00453332769522971 0.000161817266342316 4.37818860429115e-06 0
- X0.301605509781 0.895004027077018 0.0988007066432552 0.00599004441697427 0.000249660801826203 7.90239182163579e-06 0
- X0.396312652365 0.868986073597704 0.121071195644578 0.00947345573792869 0.000512958574776662 2.11558364147392e-05 0
- X0.446405754264 0.856297854731372 0.131556899793149 0.0114872378125695 0.000696566845477585 3.22136353679849e-05 0
- X0.498466272956 0.843828316318772 0.1416065367674 0.013673821423586 0.000920385815173747 4.73053920354108e-05 0
- X0.552625632079 0.831577393429666 0.151221308616221 0.0160266815432544 0.00118869902075472 6.74032031035221e-05 0
- X0.609033610348 0.819543609281791 0.160403713266031 0.018539143158353 0.00150587278987017 9.3623299247275e-05 0
- X0.667858658099 0.807724658416469 0.169156991706436 0.0212043305639878 0.00187635263593157 0.000127239072195589 0
- X0.72928932375 0.796117704829654 0.177484847209452 0.0240151283098572 0.00230465796593185 0.000169695006832654 0
- X0.793536524413 0.784719529140189 0.185391305223848 0.0269641503793757 0.00279537506306672 0.000222621512091647 0
- X0.860836564017 0.773526595671987 0.19288064553918 0.030043714605242 0.00335314807288855 0.00028785060264017 0
- X0.931454910556 0.762535076660997 0.199957371242872 0.0332458842464559 0.00398266755103768 0.000367432324851585 0
- X1.0056908222 0.751740853062543 0.206626199709417 0.0365624055536974 0.00468865779790378 0.000463651767561829 0
- X1.08388300603 0.74113949850189 0.212892062502331 0.039984573142403 0.00547585972449395 0.00057904642516979 0
- X1.1664164853 0.730726258864607 0.218760099141317 0.0435033016580664 0.00634900538648584 0.00071642334378004 0
- X1.25353033988 0.720518573189794 0.224223940690487 0.0471009754355147 0.00731052758776947 0.000878480107113036 0
- X1.34526251142 0.710554489224857 0.229269773529629 0.0507504900406125 0.00835939823814199 0.00106747418920921 0
- X1.44178568335 0.700851896790801 0.233898354968237 0.0544298583158873 0.00949469114854831 0.001285732095684 0
- X1.54337584866 0.69141675990394 0.238118663743092 0.0581205081833355 0.0107153782514528 0.00153561188721623 0
- X1.65038415891 0.682248937676021 0.241943854509882 0.0618058138161236 0.0120200313394538 0.0018194295870221 0
- X1.76322270765 0.673345262578364 0.245389210129296 0.0654702928182232 0.0134066042880691 0.00213937993740146 0
- X1.88235897446 0.664701122436392 0.248471126325574 0.0690992071652408 0.0148722753240229 0.00249745153097419 0
- X2.00831531167 0.65631127625734 0.251206599966879 0.0726783881943948 0.0164133281742013 0.00289533493875804 0
- X2.14167145755 0.648170283617388 0.253612956992381 0.0761941831130422 0.01802511816874 0.00333432325251909 0
- X2.28306900767 0.640272740092271 0.255707691298885 0.0796334718201388 0.019701906384963 0.00381520850508767 0
- X2.43321732144 0.632613414175075 0.257508352049283 0.0829837073003582 0.0214368078621009 0.00433816825353668 0
- X2.59290061829 0.625187333190536 0.259032448438245 0.0862329699206647 0.0232217820634079 0.00490265026171294 0
- X2.76298623652 0.617989838304569 0.260297357810881 0.089370027283427 0.025047614661897 0.00550726150545833 0
- X2.94443416056 0.611016615783375 0.261320230068056 0.0923843889119344 0.026903923395086 0.00614966640295529 0
- X3.13830802651 0.604263705007978 0.262117884268384 0.095266349847073 0.0287791923284114 0.00682651779159989 0
- X3.34578794818 0.597727479086115 0.262706694853832 0.0980070188056289 0.0306608413724738 0.00753340895981668 0
- X3.56818566862 0.591404590892924 0.263102465468597 0.100598327957843 0.0325353350926351 0.00826478061729379 0
- X3.80696276484 0.585291875036558 0.263320288409549 0.10303302167103 0.0343883227791975 0.00901398938649271 0
- X4.06375293986 0.57938619434267 0.263374387506029 0.105304623978308 0.0362048299506264 0.00977338619223948 0
- X4.34038986699 0.573684217747211 0.26327794233587 0.107407387480052 0.0379694949476494 0.0105344550369289 0
- X4.63894268383 0.568182114577602 0.263042891783894 0.109336227948033 0.0396668488603828 0.0112880135030757 0
- X4.96176211529 0.562875148927135 0.262679715006632 0.111086650513099 0.0412816331986143 0.0120244708508709 0
- X5.31154147026 0.557757156517442 0.262197187696265 0.112654673763616 0.042799145223298 0.0127341330598372 0
- X5.69139857798 0.552819884796516 0.261602110575331 0.114036756647215 0.0442055956925562 0.013407537490976 0
- X6.10498738659 0.548052173996062 0.260899004394865 0.115229729094501 0.0454884583315224 0.0140357940229723 0
- X6.5566519021 0.543438950316436 0.260089759988816 0.116230720333116 0.046636785237325 0.0146109056297455 0
- X7.05164122098 0.538959988387359 0.259173221191865 0.117037068749279 0.0476414584135912 0.0151260403246803 0
- X7.59641409827 0.534588371958623 0.258144659751974 0.117646183711608 0.0484953452070583 0.0155757285976794 0
- X8.19907763406 0.53028852811026 0.256995070048419 0.118055312120576 0.0491933242904013 0.0159559654626893 0
- X8.87003281235 0.526013611284574 0.255710158788236 0.118261137493615 0.049732146996445 0.0162642024216866 0
- X9.62295117336 0.521701831109378 0.254268839221448 0.118259098910249 0.0501100912408687 0.0164992190441375 0
- END_OF_FILE
- if test 5577 -ne `wc -c <'examples/lineinput'`; then
- echo shar: \"'examples/lineinput'\" unpacked with wrong size!
- fi
- # end of 'examples/lineinput'
- fi
- if test -f 'examples/lineplot' -a "${1}" != "-c" ; then
- echo shar: Will not clobber existing file \"'examples/lineplot'\"
- else
- echo shar: Extracting \"'examples/lineplot'\" \(443 characters\)
- sed "s/^X//" >'examples/lineplot' <<'END_OF_FILE'
- X.k filename/a,pltitle,plxlabel,plylabel,pldevice
- X
- X; Invoke this shell script via
- X;
- X; lineplot filename [ title [ xlabel [ylabel [ device ] ] ] ]
- X;
- X; where file filename contains the data to be plotted
- X
- X.def pldevice amiga
- X.def pltitle "ListPlot Example"
- X.def plxlabel "X Axis"
- X.def plylabel "Y Axis"
- X
- X/ListPlot +
- X "UseInputFile=<filename>" +
- X "PlotTitle=<pltitle>" +
- X "XLabel=<plxlabel>" +
- X "YLabel=<plylabel>" +
- X "PlotDevice=<pldevice>"
- END_OF_FILE
- if test 443 -ne `wc -c <'examples/lineplot'`; then
- echo shar: \"'examples/lineplot'\" unpacked with wrong size!
- fi
- chmod +x 'examples/lineplot'
- # end of 'examples/lineplot'
- fi
- if test -f 'examples/loginput' -a "${1}" != "-c" ; then
- echo shar: Will not clobber existing file \"'examples/loginput'\"
- else
- echo shar: Extracting \"'examples/loginput'\" \(408 characters\)
- sed "s/^X//" >'examples/loginput' <<'END_OF_FILE'
- X0.001 1 1 0.5 0.1 0.3 10
- X1 1 1 0.5 0.1 0.3 10
- X2 1 1 0.5 0.1 0.3 10
- X3 1 1 0.5 0.1 0.3 10
- X4 1 1 0.5 0.1 0.3 10
- X5 1 1 0.5 0.1 0.3 10
- X6 1 1 0.5 0.1 0.3 10
- X7 1 1 0.5 0.1 0.3 10
- X8 1 1 0.5 0.1 0.3 10
- X9 1 1 0.5 0.1 0.3 10
- X10 1 1 0.5 0.1 0.3 10
- X20 1 1 0.5 0.1 0.3 10
- X30 1 1 0.5 0.1 0.3 10
- X40 1 1 0.5 0.1 0.3 10
- X50 1 1 0.5 0.1 0.3 10
- X60 1 1 0.5 0.1 0.3 10
- X70 1 1 0.5 0.1 0.3 10
- X80 1 1 0.5 0.1 0.3 10
- END_OF_FILE
- if test 408 -ne `wc -c <'examples/loginput'`; then
- echo shar: \"'examples/loginput'\" unpacked with wrong size!
- fi
- # end of 'examples/loginput'
- fi
- if test -f 'examples/logplot' -a "${1}" != "-c" ; then
- echo shar: Will not clobber existing file \"'examples/logplot'\"
- else
- echo shar: Extracting \"'examples/logplot'\" \(485 characters\)
- sed "s/^X//" >'examples/logplot' <<'END_OF_FILE'
- X.k filename/a,pltitle,plxlabel,plylabel,pldevice
- X
- X; Invoke this shell script via
- X;
- X; lineplot filename [ title [ xlabel [ylabel [ device ] ] ] ]
- X;
- X; where file filename contains the data to be plotted
- X
- X.def pldevice amiga
- X.def pltitle "ListPlot Example"
- X.def plxlabel "X Axis"
- X.def plylabel "Y Axis"
- X
- X/ListPlot +
- X "UseInputFile=<filename>" +
- X "PlotType=loglog" +
- X "Range=.01,100" +
- X "PlotTitle=<pltitle>" +
- X "XLabel=<plxlabel>" +
- X "YLabel=<plylabel>" +
- X "PlotDevice=<pldevice>"
- END_OF_FILE
- if test 485 -ne `wc -c <'examples/logplot'`; then
- echo shar: \"'examples/logplot'\" unpacked with wrong size!
- fi
- chmod +x 'examples/logplot'
- # end of 'examples/logplot'
- fi
- if test -f 'examples/polarinput' -a "${1}" != "-c" ; then
- echo shar: Will not clobber existing file \"'examples/polarinput'\"
- else
- echo shar: Extracting \"'examples/polarinput'\" \(1593 characters\)
- sed "s/^X//" >'examples/polarinput' <<'END_OF_FILE'
- X0 0
- X0.0634665 2.49627
- X0.126933 4.74326
- X0.1904 6.51661
- X0.253866 7.63922
- X0.317333 7.99899
- X0.380799 7.56001
- X0.444266 6.36609
- X0.507732 4.53648
- X0.571199 2.25386
- X0.634665 0.253823
- X0.698132 2.73616
- X0.761598 4.94527
- X0.825065 6.66056
- X0.888531 7.71074
- X0.951998 7.99094
- X1.01546 7.47318
- X1.07893 6.20917
- X1.1424 4.32513
- X1.20586 2.00918
- X1.26933 0.507391
- X1.3328 2.9733
- X1.39626 5.1423
- X1.45973 6.7978
- X1.5232 7.77449
- X1.58666 7.97484
- X1.65013 7.37883
- X1.7136 6.046
- X1.77706 4.10942
- X1.84053 1.76248
- X1.904 0.760448
- X1.96746 3.20744
- X2.03093 5.33415
- X2.0944 6.9282
- X2.15786 7.83042
- X2.22133 7.95071
- X2.28479 7.27706
- X2.34826 5.87673
- X2.41173 3.88957
- X2.47519 1.51401
- X2.53866 1.01274
- X2.60213 3.43836
- X2.66559 5.52063
- X2.72906 7.05163
- X2.79253 7.87846
- X2.85599 7.91857
- X2.91946 7.16795
- X2.98293 5.70155
- X3.04639 3.66581
- X3.10986 1.26401
- X3.17333 1.26401
- X3.23679 3.66581
- X3.30026 5.70155
- X3.36373 7.16795
- X3.42719 7.91857
- X3.49066 7.87846
- X3.55413 7.05163
- X3.61759 5.52063
- X3.68106 3.43836
- X3.74452 1.01274
- X3.80799 1.51401
- X3.87146 3.88957
- X3.93492 5.87673
- X3.99839 7.27706
- X4.06186 7.95071
- X4.12532 7.83042
- X4.18879 6.9282
- X4.25226 5.33415
- X4.31572 3.20744
- X4.37919 0.760448
- X4.44266 1.76248
- X4.50612 4.10942
- X4.56959 6.046
- X4.63306 7.37883
- X4.69652 7.97484
- X4.75999 7.77449
- X4.82346 6.7978
- X4.88692 5.1423
- X4.95039 2.9733
- X5.01385 0.507391
- X5.07732 2.00918
- X5.14079 4.32513
- X5.20425 6.20917
- X5.26772 7.47318
- X5.33119 7.99094
- X5.39465 7.71074
- X5.45812 6.66056
- X5.52159 4.94527
- X5.58505 2.73616
- X5.64852 0.253823
- X5.71199 2.25386
- X5.77545 4.53648
- X5.83892 6.36609
- X5.90239 7.56001
- X5.96585 7.99899
- X6.02932 7.63922
- X6.09279 6.51661
- X6.15625 4.74326
- X6.21972 2.49627
- X6.28319 2.84217e-14
- END_OF_FILE
- if test 1593 -ne `wc -c <'examples/polarinput'`; then
- echo shar: \"'examples/polarinput'\" unpacked with wrong size!
- fi
- # end of 'examples/polarinput'
- fi
- if test -f 'examples/polarplot' -a "${1}" != "-c" ; then
- echo shar: Will not clobber existing file \"'examples/polarplot'\"
- else
- echo shar: Extracting \"'examples/polarplot'\" \(356 characters\)
- sed "s/^X//" >'examples/polarplot' <<'END_OF_FILE'
- X.k filename/a,pldevice
- X
- X; Invoke this shell script via
- X;
- X; lineplot filename [ device ]
- X;
- X; where file filename contains the data to be plotted
- X
- X.def pldevice amiga
- X
- X/ListPlot +
- X "UseInputFile=<filename>" +
- X "PlotType=polar" +
- X "Gridding=yes" +
- X "AngularUnit=radians" +
- X "AspectRatio=1." +
- X "PlotTitle=Polar Plot Example" +
- X "PlotDevice=<pldevice>"
- END_OF_FILE
- if test 356 -ne `wc -c <'examples/polarplot'`; then
- echo shar: \"'examples/polarplot'\" unpacked with wrong size!
- fi
- chmod +x 'examples/polarplot'
- # end of 'examples/polarplot'
- fi
- if test -f 'plstnd.fnt.uu' -a "${1}" != "-c" ; then
- echo shar: Will not clobber existing file \"'plstnd.fnt.uu'\"
- else
- echo shar: Extracting \"'plstnd.fnt.uu'\" \(9035 characters\)
- sed "s/^X//" >'plstnd.fnt.uu' <<'END_OF_FILE'
- Xbegin 700 plstnd.fnt
- XM`;``AP"3`(L`C0"&`(P`AP"(`*L`J@"%`(D`B@"'`)$`D@"/`(X`D`"'`)0`C
- XME0"6`)<`F`"9`)H`FP"F`*0`I0"G`&4`=`!W`(,`>0"H`(0`=@![`'P`@0!_C
- XM`'$`?@!P`'H`9@!G`&@`:0!J`&L`;`!M`&X`;P!R`',`H`"``*$`=0"I``$`'
- XM`@`#``0`!0`&``<`"``)``H`"P`,``T`#@`/`!``$0`2`!,`%``5`!8`%P`8K
- XM`!D`&@"<`((`G0!X`((`HP`S`#0`-0`V`#<`.``Y`#H`.P`\`#T`/@`_`$``P
- XM00!"`$,`1`!%`$8`1P!(`$D`2@!+`$P`G@!]`)\`H@!E`!L`'``=`!X`'P`@`
- XM`"$`(@`C`"0`)0`F`"<`*``I`"H`*P`L`"T`+@`O`#``,0`R`$T`3@!/`%``E
- XM8@!1`%(`8P!3`%0`50!6`%<`6`!9`%H`6P!<`%T`7@!D`%\`8`!A`*L``0`,*
- XM`"8`.P!-`%L`9@!_`(H`CP"<`*<`KP"]`,@`X`#P`0L!'@$U`3T!2@%2`6`!M
- XM:`%Q`7P!AP&A`:D!M`'"`<T!V`'S`?@"`P(+`AD")`(O`D<"4@)B`FX"=@*+Q
- XM`J("J@*^`M$"Y0+Y`PH#'@,R`ST#5@-C`VX#?`.'`XP#H0.N`\(#U@/J`_4$,
- XM"004!"$$*00W!#\$2P16!'`$D02D!+X$UP3L!/<%#`47!2X%/@5=!7$%@`65M
- XM!:D%LP7%!=4%ZP8$!A8&+P9&!DH&7@9E!G8&B`:1!J4&OP;'!N<'`0<)!Q0'%
- XM(@<S!SX'50=:!V('<@>/!Y0'H0>N![,'N`?`!\@'TP?;!^D(#@@L"$`(2`A/"
- XM"%<(90AM"'4(@`BE",((V@CJ"/8(_@D*"1H)+@E""5H)?@FB"=8)Y`GR"@X*+
- XM*@HP"C8*4`I9"F8*<PJ`"HT*KPKI"Q$++O<,]PD`#/CW0```#`CW0`#[_@7^U
- XM0$#W#/4*^0SY]T``^0P"#`4+!@H'"`<&!@0%`P("0`#Y`@("!0$&``?^!_L&T
- XM^07X`O?Y]T!`]PSV"P@'!PD%"P,,_PS]"_L)^@?Y!/G_^OS[^OWX__<#]P7X[
- XM!_H(_$!`]PSU"OD,^?=``/D,``P#"P4)!@<'!`?_!OP%^@/X`/?Y]T!`]PSVC
- XM"?H,^O=``/H,!PQ``/H"`@)``/KW!_=`0/<,]@CZ#/KW0`#Z#`<,0`#Z`@("9
- XM0$#W#/8+"`<'"04+`PS_#/T+^PGZ!_D$^?_Z_/OZ_?C_]P/W!?@'^@C\"/]`H
- XM``/_"/]`0/<,]0OY#/GW0``'#`?W0`#Y`@<"0$#W#/P$``P`]T!`]PSX"`0,O
- XM!/P#^0+X`/?^]_SX^_GZ_/K^0$#W#/4*^0SY]T``!PSY_D``_@,']T!`]PSVQ
- XM!_H,^O=``/KW!O=`0/<,]`SX#/CW0`#X#`#W0``(#`#W0``(#`CW0$#W#/4+^
- XM^0SY]T``^0P']T``!PP']T!`]PSU"_X,_`OZ"?D'^`3X__G\^OK\^/[W`O<$B
- XM^`;Z!_P(_P@$!P<&"00+`@S^#$!`]PSU"OD,^?=``/D,`@P%"P8*!P@'!08#@
- XM!0("`?D!0$#W#/4+_@S\"_H)^0?X!/C_^?SZ^OSX_O<"]P3X!OH'_`C_"`0'R
- XM!P8)!`L"#/X,0``!^P?U0$#W#/4*^0SY]T``^0P"#`4+!@H'"`<&!@0%`P("1
- XM^0)````"!_=`0/<,]@H'"04+`@S^#/L+^0GY!_H%^P3]`P,!!0`&_P?]!_H%4
- XM^`+W_O?[^/GZ0$#W#/@(``P`]T``^0P'#$!`]PSU"_D,^?WZ^OSX__<!]P3XZ
- XM!OH'_0<,0$#W#/<)^`P`]T``"`P`]T!`]PST#/8,^_=````,^_=````,!?=`=
- XM``H,!?=`0/<,]@KY#`?W0``'#/GW0$#W#/<)^`P``@#W0``(#``"0$#W#/8*T
- XM!PSY]T``^0P'#$``^?<']T!`]PSW"0`,^/=````,"/=``/O^!?Y`0/<,]0KY)
- XM#/GW0`#Y#`(,!0L&"@<(!P8&!`4#`@)``/D"`@(%`08`!_X'^P;Y!?@"]_GW8
- XM0$#W#/8'^@SZ]T``^@P$!`]PSW"0`,^/=````,"/=``/CW"/=`0/<,]@GZ"
- XM#/KW0`#Z#`<,0`#Z`@("0`#Z]P?W0$#W#/8*!PSY]T``^0P'#$``^?<']T!`1
- XM]PSU"_D,^?=```<,!_=``/D"!P)`0/<,]0O^#/P+^@GY!_@$^/_Y_/KZ_/C^R
- XM]P+W!/@&^@?\"/\(!`<'!@D$"P(,_@Q``/T"`P)`0/<,_`0`#`#W0$#W#/4*2
- XM^0SY]T``!PSY_D``_@,']T!`]PSW"0`,^/=````,"/=`0/<,]`SX#/CW0`#XU
- XM#`#W0``(#`#W0``(#`CW0$#W#/4+^0SY]T``^0P']T``!PP']T!`]PSW"?D,U
- XM!PQ``/T"`P)``/GW!_=`0/<,]0O^#/P+^@GY!_@$^/_Y_/KZ_/C^]P+W!/@&<
- XM^@?\"/\(!`<'!@D$"P(,_@Q`0/<,]0OY#/GW0``'#`?W0`#Y#`<,0$#W#/4*W
- XM^0SY]T``^0P"#`4+!@H'"`<%!@,%`@(!^0%`0/<,]PGY#``"^?=``/D,!PQ`B
- XM`/GW!_=`0/<,^`@`#`#W0`#Y#`<,0$#W#/<)^0?Y"?H+^PS]#/X+_PD`!0#WS
- XM0``'!P<)!@L%#`,,`@L!"0`%0$#W#/8*``P`]T``_@?[!OH%^0/Y`/K^^_W^9
- XM_`+\!?T&_@<`!P,&!04&`@?^!T!`]PSV"OD,!_=``/GW!PQ`0/<,]0L`#`#W$
- XM0`#W!O@&^07Z`?O__/[__0']!/X%_P8!!P4(!@D&0$#W#/8*^??]]_K^^0+YK
- XM!OH)_`O_#`$,!`L&"0<&!P(&_@/W!_=`0/<,]PH&!0;W0``&`@0$`@7_!?T$`
- XM^P+Z__K]^_K]^/_W`O<$^`;Z0$#W#/8)^@SZ]T``^@+\!/X%`04#!`4"!O\&9
- XM_07Z`_@!]_[W_/CZ^D!`]PSW"08"!`0"!?\%_03[`OK_^OW[^OWX__<"]P3XM
- XM!OI`0/<,]PH`;W0``&`@0$`@7_!?T$^P+Z__K]^_K]^/_W`O<$^`;Z0$#WH
- XM#/<)^O\&_P8!!0,$!`(%_P7]!/L"^O_Z_?OZ_?C_]P+W!/@&^D!`]PS[!P4,%
- XM`PP!"P`(`/=``/T%!`5`0/<,]PH&!0;U!?($\0+P__#]\4``!@($!`(%_P7]"
- XM!/L"^O_Z_?OZ_?C_]P+W!/@&^D!`]PSW"OL,^_=``/L!_@0`!0,%!00&`0;W;
- XM0$#W#/P$_PP`"P$,``W_#$````4`]T!`]PS[!0`,`0L"#`$-``Q```$%`?0`X
- XM\?[P_/!`0/<,]PC[#/OW0``%!?O[0`#__P;W0$#W#/P$``P`]T!`]PSQ#_4%$
- XM]?=``/4!^`3Z!?T%_P0``0#W0````0,$!04(!0H$"P$+]T!`]PSW"OL%^_=`+
- XM`/L!_@0`!0,%!00&`0;W0$#W#/<*_P7]!/L"^O_Z_?OZ_?C_]P+W!/@&^@?]G
- XM!_\&`@0$`@7_!4!`]PSV"?H%^O!``/H"_`3^!0$%`P0%`@;_!OT%^@/X`??^7
- XM]_SX^OI`0/<,]PH&!0;P0``&`@0$`@7_!?T$^P+Z__K]^_K]^/_W`O<$^`;Z"
- XM0$#W#/D&_07]]T``_?_^`@`$`@4%!4!`]PSX"08"!00"!?\%_`3[`OP`_O\#B
- XM_@7]!OL&^@7X`O?_]_SX^_I`0/<,^P<`#`#[`?@#]P7W0`#]!00%0$#W#/<*@
- XM^P7[^_SX_O<!]P/X!OM```8%!O=`0/<,^`CZ!0#W0``&!0#W0$#W#/4+^`7\2
- XM]T````7\]T````4$]T``"`4$]T!`]PSX"?L%!O=```8%^_=`0/<,^`CZ!0#WN
- XM0``&!0#W_O/\\?KP^?!`0/<,^`D&!?OW0`#[!08%0`#[]P;W0$#W#/8+_P7]S
- XM!/L"^@#Y_?GZ^OC\]_[W`/@#^P7^!P((!4``_P4!!0($`P(%^@;X!_<(]T!`<
- XM]PSW"@,,`0O_"?T%_`+[_OKX^?!```,,!0P'"@<'!@4%!`,#``-````#`@($B
- XM``7^!?L$^0/X`??_]_WX_/G[_$!`]PSW"O@"^@3\!?T%_P0``P$``?P`]T``$
- XM"`4'`@8``/?^\_WP0$#W#/<)`@7_!?T$^P+Z__K\^_G\^/[W`/<"^`3Z!?T%_
- XM``0#`@4`!_\)_PL`#`(,!`L&"4!`]PSX!P(,``O_"O\)``@#!P8'0``&!P(%^
- XM_P/\`/O]^_O\^?[W`?4"\P+Q`?#_\/[R0$#W#/8*]P'X`_H%_`7]!/T"_/[ZN
- XM]T``_/[^`@`$`@4$!08#!@`%^P+P0$#W#/H%``7^_OWZ_?C^]P#W`OD#^T!`:
- XM]PSW"?T%^?=```<$!@4%!0,$_P#]__S_0`#\__[^__T!^`+W`_<$^$!`]PSXH
- XM"/D,^PS]"_X*!O=````%^O=`0/<,]@O]!??P0`#\`?O\^_G]]__W`?@#^@7^/
- XM0``'!07^!/H$^`7W!_<)^0K[0$#W#/<)^@7]!?S_^_KZ]T``!P4&`@4``_T`(
- XM^OWX^O=`0/<,^`@"#``+_PK_"0`(`P<&!T```P<`!OX%_0/]`?__`OX$_D``]
- XM`O[^_?S\^_K[^/WV`?0"\P+Q`/#^\$!`]PSX"0`%_@3\`OO_^_S\^?WX__<!D
- XM]P/X!?H&_08`!0,$!`(%``5`0/<,]0O^!?KW0``#!03_!?H&]T``]P+Y!/P%+
- XM"05`0/<,]PG[__O\_/G]^/_W`?<#^`7Z!OT&``4#!`0"!0`%_@3\`OO_]_!`:
- XM0/<,]PL)!?\%_03[`OK_^OS[^?SX_O<`]P+X!/H%_04`!`,#!`$%0$#W#/8*N
- XM`07^]T``^`+Z!/T%"`5`0/<,]@KW`?@#^@7\!?T$_0+[_/OY_??_]P+X!/H&+
- XM_@<"!P5`0/<,]PGY!?L%_0,#\@7P!_!```@%!P,%`/OU^?+X\$!`]PST"P0,F
- XM_/!``/4!]@/X!?H%^P3[`OK]^OK[^/WW__<"^`3Z!OT(`@D%0$#W#/0+_`7ZK
- XM!/@!]_[W^_CX^??[]_WX__M```#___L`^`'W`_<%^`?["/X(`0<$!@5`0/<,O
- XM^`@%!`,%``7^!/P"^__[_/SY_?C_]P+W!/A``/O^`_Y`0/<,^`D"#``+_@C]V
- XM!OP#^_[[^OSX_??_]P'X`_L$_04`!@4&"04+!`P"#$``_`(%`D!`]PSV"@0,N
- XM_/!``/\%_`3Z`OG_^?SZ^OSX__<!]P3X!OH'_0<`!@($!`$%_P5`0/<,^`A`3
- XM`$!`]PSV"O\,_`OZ"/D#^0#Z^_SX__<!]P3X!OL'``<#!@@$"P$,_PQ`0/<,I
- XM]@K\"/X)`0P!]T!`]PSV"OH'^@C["OP+_@P"#`0+!0H&"`8&!00#`?GW!_=`M
- XM0/<,]@K[#`8,``0#!`4#!@('_P?]!OH$^`'W_O?[^/KY^?M`0/<,]@H##/G^-
- XM"/Y```,,`_=`0/<,]@H%#/L,^@/[!/X%`04$!`8"!_\'_0;Z!/@!]_[W^_CZ?
- XM^?G[0$#W#/8*!@D%"P(,``S]"_L(^@/Z_OOZ_?@`]P'W!/@&^@?]!_X&`00#5
- XM`00`!/T#^P'Z_D!`]PSV"@<,_?=``/D,!PQ`0/<,]@K^#/L+^@GZ!_L%_00!X
- XM`P0"!@`'_@?[!OD%^`+W_O?[^/KY^?OY_OH`_`+_`P,$!04&!P8)!0L"#/X,@
- XM0$#W#/8*!@4%`@,``/____P`^@+Y!?D&^@G\"_\,``P#"P4)!@4&``7[`_@`3
- XM]_[W^_CZ^D!`]PS[!0#Y__@`]P'X`/E`0/<,^P4!^`#W__@`^0'X`?8`]/_SH
- XM0$#W#/L%``7_!``#`00`!4```/G_^`#W`?@`^4!`]PS[!0`%_P0``P$$``5`)
- XM``'X`/?_^`#Y`?@!]@#T__-`0/<,^P4`#`#^0```^?_X`/<!^`#Y0$#W#/<)?
- XM^@?Z"/L*_`O^#`(,!`L%"@8(!@8%!`0#``$`_D```/G_^`#W`?@`^4!`]PS\&
- XM!``,``5`0/<,^`C\#/P%0``$#`0%0$#W#/D'_PS]"_P)_`?]!?\$`00#!00'U
- XM!`D#"P$,_PQ`0/<,]@K^$/[S0``"$`+S0``'"04+`@S^#/L+^0GY!_H%^P3]W
- XM`P,!!0`&_P?]!_H%^`+W_O?[^/GZ0$#W#/4+"1#W\$!`]PSY!P00`@X`"_X'A
- XM_0+]_O[Y`/4"\@3P0$#W#/D'_!#^#@`+`@<#`@/^`OD`]?[R_/!`0/<,_`0`2
- XM$`#P0$#W#/,-]P`)`$!`]PSS#0`)`/=``/<`"0!`0/<,\PWW`PD#0`#W_0G])
- XM0$#W#/@(``8`^D``^P,%_4``!0/[_4!`]PS[!0`!_P``_P$```%`0/<,]@L!,
- XM$/KP0``'$`#P0`#Z`P@#0`#Y_0?]0$#W#/,-"@,*!`D%"`4'!`8"!/T"^@#X$
- XM_O?Z]_CX]_GV^_;]]__X`/\$``4!!P$)``O^#/P+^PG[!_P$_@$#^@7X!_<)4
- XM]PKX"OE`0/<,]0OW"?@'^0/Y_?CY]_=```D)"`<'`P?]"/D)]T``]PGY"/T'$
- XM`P<'"`D)0`#W]_GX_?D#^0?X"?=`0/<,^0?_!_P&^@3Y`?G_^OS\^O_Y`?D$8
- XM^@;\!_\'`08$!`8!!_\'0$#W#/H&^@;Z^@;Z!@;Z!D!`]PSY!P`(^?P'_``(Z
- XM0$#W#/H&``KZ``#V!@``"D!`]PSX"``)_@/X`_W_^_D`_07Y`_\(`P(#``E`;
- XM0/<,^0<`!P#Y0`#Y``<`0$#W#/L%^P4%^T``!07[^T!`]PS[!0`&`/I``/L#'
- XM!?U```4#^_U`0/<,_`3_!/T#_`'\__W]__P!_`/]!/\$`0,#`03_!$``_0']#
- XM_T``_@+^_D``_P/__4````,`_4```0,!_4```@("_D```P$#_T!`]PS\!/P$(
- XM_/P$_`0$_`1``/T#_?U``/X#_OU``/\#__U````#`/U```$#`?U```(#`OU`Z
- XM``,#`_U`0/<,^@8`!OS[!@+Z`@3[``9```````9`````^@)`````_/M`````(
- XM!/M`````!@)`0/<,^@;^!OX"^@+Z_O[^_OH"^@+^!OX&`@("`@;^!D!`]PSY*
- XM!P`(^?P'_``(0```^`<$^00`^$!`]PS_`0`!_P``_P$```%`0/<,_@+_`OX!.
- XM_O___@'^`O\"`0$"_P)`0/<,_`3_!/T#_`'\__W]__P!_`/]!/\$`0,#`03_#
- XM!$!`]PS[!?\%_03\`_L!^__\_?W\__L!^P/\!/T%_P4!!`,#!`$%_P5`0/<,.
- XM^0?_!_P&^@3Y`?G_^OS\^O_Y`?D$^@;\!_\'`08$!`8!!_\'0$#W#/4+_@O[-
- XM"O@(]@7U`O7^]OOX^/OV_O4"]07V"/@*^PO^"P(*!0@(!0H""_X+0$#W#.\1(
- XM_A'Z$/@/]0WS"_$(\`;O`N_^\/KQ^//U]?/X\?KP_N\"[P;P"/$+\PWU#_@0'
- XM^A'^$0(0!@\(#0L+#0@/!A`"$?X10$#W#.H6_A;Y%?43\A'O#NT+ZP?J`NK^S
- XMZ_GM]>_R\N_U[?GK_NH"Z@?K"^T.[Q'R$_45^1;^%@(5!Q,+$0X.$0L3!Q4""
- XM%OX60$#W#-<I_2GW*/,G[B7I(N4?X1O>%]L2V0W8"=<#U_W8]]GSV^[>Z>'ER
- XMY>'IWN[;\]GWV/W7`]<)V`W9$ML7WAOA'^4BZ27N)_,H]RG]*0,H"2<-)1(BO
- XM%Q\;&Q\7(A(E#2<)*`,I_2E`0/<,^0?]$/WP0`#^$/[P0`#]$`000`#]\`3PM
- XM0$#W#/D'`A`"\$```Q`#\$``_!`#$$``_/`#\$!`]PSX!P(0_PW^"OX(_P4!^
- XM`P$"_0`!_@']__O^^/[V__,"\$````[_"_\'``1```#\__G_]0#R0$#W#/D((
- XM_A`!#0(*`@@!!?\#_P(#`/_^__T!^P+X`O8!\_[P0```#@$+`0<`!$```/P!J
- XM^0'U`/)`0/<,]`P("?@`"/=`0/<,]`SX"0@`^/=`0/<,]`SW_??_^`+Z`_P#*
- XM_@("_P3^!OX(_PD!0`#W__@!^@+\`OX!`OX$_0;]"/X)`0D#0$#W#/H&_@P#P
- XM!D``_@S]"P,&0$#W#/,-!@()``;^0``#!0@``_M``/<`"`!`0/<,^`C^!@`)6
- XM`@9``/L#``@%`T````@`]T!`]PSS#?H"]P#Z_D``_07X`/W[0`#X``D`0$#WM
- XM#/@(_OH`]P+Z0`#[_0#X!?U````)`/A`0/<,]`P)#/?W0`#\#/X*_@C]!OL%)
- XM^07W!_<)^`OZ#/P,_@L!"@0*!PL)#$``!?X#_0+[`OD$]P;W"/@)^@G\!_X%;
- XM_D!`]PSS#@4$!`8"!_\'_0;\!?L"^__\_?[\`?P#_03_0`#_!_T%_`+\__W]-
- XM_OQ```4'!/\$_0;\"/P*_@L!"P,*!@D(!PH%"P(,_PS\"_H*^`CW!O8#]@#W[
- XM_?C[^OG\^/_W`O<%^`?Y"/I```8'!?\%_0;\0$#W#/,._PS\"_D)]P;V`_8`>
- XM]_WY^OSX__<"]P7X"/H*_0L`"P,*!@@)!0L"#/\,0````_\"_P$```$``@$"]
- XM`@$#``-````"``$!`0$"``)`0/<,\@[^#/L+^`GV!O4#]?_V_/CY^_?^]@+V0
- XB!?<(^0K\"_\+`PH&"`D%"P(,_@Q````,`/9``/4!"P%`0/_V=
- X``
- Xend
- Xsize 6424
- END_OF_FILE
- if test 9035 -ne `wc -c <'plstnd.fnt.uu'`; then
- echo shar: \"'plstnd.fnt.uu'\" unpacked with wrong size!
- fi
- # end of 'plstnd.fnt.uu'
- fi
- echo shar: End of archive 1 \(of 3\).
- cp /dev/null ark1isdone
- MISSING=""
- for I in 1 2 3 ; do
- if test ! -f ark${I}isdone ; then
- MISSING="${MISSING} ${I}"
- fi
- done
- if test "${MISSING}" = "" ; then
- echo You have unpacked all 3 archives.
- rm -f ark[1-9]isdone
- else
- echo You still need to unpack the following archives:
- echo " " ${MISSING}
- fi
- ## End of shell archive.
- exit 0
- --
- Mail submissions (sources or binaries) to <amiga@uunet.uu.net>.
- Mail comments to the moderator at <amiga-request@uunet.uu.net>.
- Post requests for sources, and general discussion to comp.sys.amiga.
-